{% extends 'base.html' %}
{% load static %}
{% load i18n %}

{% block custom_head_css_js %}
    <link href="{% static 'css/plugins/select2/select2.min.css' %}" rel="stylesheet">
    <link href="{% static 'css/plugins/sweetalert/sweetalert.css' %}" rel="stylesheet">
    <script src="{% static 'js/plugins/select2/select2.full.min.js' %}"></script>
    <script src="{% static 'js/plugins/sweetalert/sweetalert.min.js' %}"></script>
{% endblock %}

{% block content %}
    <div class="wrapper wrapper-content animated fadeInRight">
        <div class="row">
            <div class="col-sm-12">
                <div class="ibox float-e-margins">
                    <div class="panel-options">
                        <ul class="nav nav-tabs">
                           <li class="active">
                                <a href="{% url 'ops:task-detail' pk=object.pk %}" class="text-center"><i class="fa fa-laptop"></i> {% trans 'Task detail' %} </a>
                            </li>
                            <li>
                                <a href="{% url 'ops:task-adhoc' pk=object.pk %}" class="text-center"><i class="fa fa-laptop"></i> {% trans 'Task versions' %} </a>
                            </li>
                            <li>
                                <a href="{% url 'ops:task-history' pk=object.pk %}" class="text-center"><i class="fa fa-laptop"></i> {% trans 'Run history' %} </a>
                            </li>
                            <li>
                                <a class="text-center celery-task-log"><i class="fa fa-laptop"></i> {% trans 'Last run output' %} </a>
                            </li>
                        </ul>
                    </div>
                    <div class="tab-content">
                        <div class="col-sm-7" style="padding-left: 0">
                            <div class="ibox float-e-margins">
                                <div class="ibox-title">
                                    <span class="label"><b>{{ object.name }}</b></span>
                                    <div class="ibox-tools">
                                        <a class="collapse-link">
                                            <i class="fa fa-chevron-up"></i>
                                        </a>
                                        <a class="dropdown-toggle" data-toggle="dropdown" href="#">
                                            <i class="fa fa-wrench"></i>
                                        </a>
                                        <ul class="dropdown-menu dropdown-user">
                                        </ul>
                                        <a class="close-link">
                                            <i class="fa fa-times"></i>
                                        </a>
                                    </div>
                                </div>
                                <div class="ibox-content">
                                    <table class="table">
                                        <tbody>
                                        <tr class="no-borders-tr">
                                            <td width="20%">{% trans 'ID' %}:</td>
                                            <td><b>{{ object.id }}</b></td>
                                        </tr>
                                        <tr>
                                            <td width="20%">{% trans 'Name' %}:</td>
                                            <td><b>{{ object.name }}</b></td>
                                        </tr>
                                        <tr>
                                            <td>{% trans 'Date created' %}:</td>
                                            <td><b>{{ object.date_created }}</b></td>
                                        </tr>
                                        <tr>
                                            <td>{% trans 'Total versions' %}</td>
                                            <td><b>{{ object.adhoc.all |length }}</b></td>
                                        </tr>
                                        <tr>
                                            <td>{% trans 'Latest version' %}</td>
                                            <td><b><a href="{% url 'ops:adhoc-detail' pk=object.latest_adhoc.id %}">{{ object.latest_adhoc.short_id }}</a></b></td>
                                        </tr>
                                        <tr>
                                            <td>{% trans 'Last run' %}:</td>
                                            <td><b>{{ object.latest_history.date_start }}</b></td>
                                        </tr>
                                        <tr>
                                            <td>{% trans 'Time delta' %}:</td>
                                            <td><b>{{ object.latest_history.timedelta|floatformat}} s</b></td>
                                        </tr>
                                        <tr>
                                            <td>{% trans 'Is finished' %}:</td>
                                            <td><b>{{ object.latest_history.is_finished|yesno:"Yes,No,Unkown" }}</b></td>
                                        </tr>
                                        <tr>
                                            <td>{% trans 'Is success ' %}:</td>
                                            <td><b>{{ object.latest_history.is_success|yesno:"Yes,No,Unkown" }}</b></td>
                                        </tr>
                                        <tr>
                                            <td>{% trans 'Contents' %}:</td>
                                            <td>
                                                <b>
                                                {% for task in object.latest_adhoc.tasks %}
                                                {{ forloop.counter }}. {{ task.name }} ::: {{ task.action.module }} <br/>
                                                {% endfor %}
                                                </b>
                                            </td>
                                        </tr>
                                        </tbody>
                                    </table>
                                </div>
                            </div>
                        </div>
                        <div class="col-sm-5" style="padding-left: 0;padding-right: 0">
                            <div class="panel panel-danger">
                                <div class="panel-heading">
                                    <i class="fa fa-info-circle"></i> {% trans 'Last run failed hosts' %}
                                </div>
                                <div class="panel-body">
                                    <table class="table">
                                        <tbody>
                                        {% for host, task in object.latest_history.failed_hosts.items %}
                                        {% if forloop.first %}
                                        <tr class="no-borders-tr">
                                        {% else %}
                                        <tr>
                                            {% endif %}
                                            <td>{{ host }}: </td>
                                            <td>
                                                {% for name, result in task.items %}
                                                    <b>{{ name }}</b> => {{  result.msg }}
                                                {% endfor %}
                                            </td>
                                        </tr>
                                        {% empty %}
                                            <tr class="no-borders-tr">
                                                <td>{% trans 'No hosts' %}</td>
                                            </tr>
                                        {% endfor %}
                                        </tbody>
                                    </table>
                                </div>
                            </div>

                            <div class="panel panel-primary">
                                <div class="panel-heading">
                                    <i class="fa fa-info-circle"></i> {% trans 'Last run success hosts' %}
                                </div>
                                <div class="panel-body">
                                    <table class="table">
                                        <tbody>
                                        {% for host in object.latest_history.success_hosts %}
                                        {% if forloop.first %}
                                        <tr class="no-borders-tr">
                                        {% else %}
                                        <tr>
                                        {% endif %}
                                            <td>{{ host }}</td>
                                        </tr>
                                        {% empty %}
                                        <tr class="no-borders-tr">
                                            <td>{% trans 'No hosts' %}</td>
                                        </tr>
                                        {% endfor %}
                                        </tbody>
                                    </table>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
{% endblock %}
{% block custom_foot_js %}
<script>
$(document).ready(function () {
}).on('click', '.celery-task-log', function () {
    var history_pk = "{{ object.latest_history.pk  }}";
    if (!history_pk) {
        alert("没有运行历史");
        return
    }
    var url = '{% url 'ops:celery-task-log' pk=DEFAULT_PK %}'.replace('{{ DEFAULT_PK }}', history_pk);
    window.open(url, '', 'width=800,height=600,left=400,top=400')
})

</script>
{% endblock %}

